/*!
 * \details Classe para conexão em Bancos de Dados
 * \author Alcione Ferreira\n
 * \since 09/11/2009\n
 * \date 19/04/2012\n
 * \version 1.0.0\n
 * \copyright GNU Public License.
 */

#include <libex.h>
#include <iostream>
#include <fstream>
#include <cstring>
#include <vector>
#include <cstdlib>
//MYSQL
//checando plataforma Win32
#if  defined(__WIN32__) && !defined(__WIN__)
#include <winsock.h>
#include <mysql.h>
#else
#include <mysql/mysql.h>
#endif

using namespace std;

#ifndef __BANCOMY_H__
#define __BANCOMY_H__ 1

/**
 * \class BANCOMY
 * \brief Classe de Conexão com banco de dados MySQL
 */
class BANCOMY
  	{
  	public:
    	/** Construtor da Classe BANCOMY*/
    	BANCOMY(const char *);
		/** Destrutor da Classe BANCOMY*/
    	~BANCOMY();
    	bool conectado;
    	int tipo;// Selecionar o tipo do banco
    	//1 = DELETE,DROP,CREATE,UPDATE e INSERT sem retorno, 2 = SELECT e INSERT com retorno, 3 = Falha
    	int query_result;
		int registros;
		unsigned int colunas;
    	string mensagem;
    	void executar(char *, int);
		void resultado();
		void conectar();
		string *resultados;

		ifstream conf;
		string conf_file;
    	string host;
    	string banco;
    	string user;
    	string senha;

  	private:
    	MYSQL conn;
		MYSQL_RES *result;
		MYSQL_ROW dados;
	
  	};

#endif // __BANCOMY_H__
